// Import Vue
import Vue from 'vue';

// Import Framework7
import Framework7 from 'framework7/framework7-lite.esm.bundle.js';

// Import Framework7-Vue Plugin
import Framework7Vue from 'framework7-vue/framework7-vue.esm.bundle.js';

// Import Framework7 Styles
import 'framework7/css/framework7.bundle.css';

// Import Icons and App Custom Styles
import '../css/icons.css';
import '../css/app.scss';

// Import App Component
import App from '../components/app.vue';
import NumberEle from '../AJ-components/number-ele'
import CustomTabs from '../AJ-components/tabs';
import TabItem from '../AJ-components/tabs/item'
import CustomInput from '../AJ-components/input'
import CustomInput2 from '../AJ-components/input2'
import CustomModal from '../AJ-components/modal'
import CustomCalender from '../AJ-components/date-picker'
import NoContentTips from '../AJ-components/no-content-tips'
import { Grid, GridItem, Popup, Tab, Tabs, Toast, CountDown, Dialog } from 'vant';
import 'lib-flexible/flexible'
import VueClipboard from 'vue-clipboard2'
import Moment from 'moment'
import store from '../store'
import filters from '../filters'
Vue.prototype.$moment = Moment;
Vue.use(VueClipboard)
Vue.prototype.$toast = Toast;
Vue.prototype.$dialog = Dialog;
Vue.component('number-ele', NumberEle);
Vue.component('custom-tabs', CustomTabs);
Vue.component('tab-item', TabItem);
Vue.component('custom-input', CustomInput);
Vue.component('custom-input2', CustomInput2);
Vue.component('custom-modal', CustomModal);
Vue.component('custom-calender', CustomCalender);
Vue.component('no-content-tips', NoContentTips)
Vue.use(Grid).use(GridItem).use(Popup).use(Tab).use(Tabs).use(CountDown)

// Init Framework7-Vue Plugin
Framework7.use(Framework7Vue);


// Init App
new Vue({
  el: '#app',
  render: (h) => h(App),
  store,
  // Register App Component
  components: {
    app: App
  },
});